﻿using System;
using System.Collections.Generic;
using System.Text;

namespace RaisingStudio.Data.Common.Expressions
{
    public abstract class CodeNode
    {
        /**
         * Parent of this code node.
         */
        private CodeNode parentNode;
        public CodeNode ParentNode
        {
            get { return parentNode; }
            set { parentNode = value; }
        }

        private bool _checked;

        public bool Checked
        {
            get { return _checked; }
            set { _checked = value; }
        }

        /**
         * Specifies whether a fatal error has been detected in this code node.
         */
        private bool error;
        public bool Error
        {
            get { return error; }
            set { error = value; }
        }

        private SourceLocation begin;
        public SourceLocation Begin
        {
            get { return begin; }
            set { begin = value; }
        }

        private SourceLocation end;
        public SourceLocation End
        {
            get { return end; }
            set { end = value; }
        }
    }
}
